Windows+VSCode+MinGW+CMake环境配置

您所在的位置:网站首页 vscode cmake 开发stm32 Windows+VSCode+MinGW+CMake环境配置

Windows+VSCode+MinGW+CMake环境配置

2023-06-16 01:16| 来源: 网络整理| 查看: 265

引言

这篇博客介绍的是,如何在windows环境下搭建基于CMake和GCC的开发环境。这里使用的编辑器是VSCode。害怕麻烦的同学不应该搭建这个开发环境,应该直接使用VS Studiao的集成开发环境。 而我之所以要搭建这个环境,是因为为了方便在Windows下写好程序,直接移植到Linux系统,这样配置基本可以做到不需要怎么改。 OK,让我们开始吧~~~

1 软件安装

配置这个环境的前提是要安装好:

VSCodeCMakeMinGW 关于这三个软件的安装,这里就不多介绍了,但是需要注意的是,在安装好后,需要把CMake和MinGW的环境变量设置到系统环境变量中。 具体而言,就是要把包含有cmake-gui.exe和gcc.exe,g++.exe,gdb.exe等应用程序的路径包含到环境变量中,在我的电脑上这两个路径分别为: D:\software\cmake-3.18.0-rc3-win64-x64\bin D:\software\MinGW64\bin

此外,在VSCode中,需要下载好以下四个插件:

C/C++C++ IntellisenseCMakeCMake Tools 这里面的前两个插件是提供C++自动代码补全的支持的,后两个是提供CMake代码自动补全支持的插件。务必都要下载。 2 创建工程

打开VSCode,创建一个main.cpp,创建一个CMakeLists.txt main.cpp

#include using namespace std; int main(int agec, char **argv) { cout "type": "shell", // 这里决定了task的类型,shell类型就是在命令行里运行command的命令,还有一种类型是“process”,这里就不介绍了 "label": "mk_build", // task的名字 "command": "mkdir", // 需要被运行的命令 "args": ["build"], // 传递给command的参数 "options": { "cwd": "${workspaceFolder}", }, }, // Task 2:运行cmake { "type": "shell", "label": "cmake", "command": "cmake", "args": [ "-G", "MinGW Makefiles", // 这里必须定义生成器,否则默认cmake生成的是VS Studio可编译的工程 "${workspaceFolder}" ], "options": { "cwd": "${workspaceFolder}/build", // 工作路径,就是说cmake的输出都会放在${workspaceFolder}/build文件夹下 }, "problemMatcher": [], "group": { "kind": "build", "isDefault": true } }, // Task 3:运行make { "type": "shell", "label": "build", "command": "mingw32-make", "args": ["-j4"], "options": { "cwd": "${workspaceFolder}/build", }, "problemMatcher": [], "group": { "kind": "build", // 这里说明这个任务时输入"build"类型的,也就是说明,这是一个生成任务 "isDefault": true }, "dependsOn": [ "cmake" // 这里设置,说明了这个任务一定要在Task “cmake”执行之后方可执行 ] } ], "version": "2.0.0" } 3、执行任务:Ctrl+Shift+B即可执行定义好的生成任务。另外,也可以通过菜单栏的“终端”栏目运行任务。 3.2 配置调试(Debug)环境

VSCode的提供了一个调试的环境,但是我们需要先配置好launch.json,才可以使用这一个功能。 这里我们介绍操作步骤:

1、创建launch.json文件 这里同样有两种方法: 一是:点击上方菜单栏的“运行”>“打开配置”;二是:“Ctrl+Shift+P”,输入debug,选择“调试:打开launch.json”即可。 2、配置launch.json文件,具体可见下方程序实例:

launch.json

{ "version": "0.2.0", "configurations": [ // Debug 1,这里也可以配置多个Debug任务,这其实和tasks.json很类似 { "name": "first_exe", // Debug任务名 "type": "cppdbg", // 类型 "request": "launch", "program": "${workspaceFolder}/build/cmake_test_project.exe", // 需要调试的应用程序,这是需要按照你的需要进行调整的 "args": [], // 传递参数给应用程序 "stopAtEntry": false, "cwd": "${workspaceFolder}", // 当前工作路径 "environment": [{"name": "PATH","value": "${PATH};D:/software/opencv/build-gcc/bin;D:/software/aruco/bin"}], // 这里需要特别注意,这里要把应用程序运行需要的动态链接库的路径,放进来,这里也需要你根据自己需要进行调整,我在这里给出一个示范 "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "D:/software/TDM-GCC-64/bin/gdb.exe", // 这里需要填写你自己的gdb.exe的路径 "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true } ] } ] } 3、执行调试:F5 3.3 配置代码自动补全环境

一般来说,把上面两个都配置好,就可以在VSCode里写程序,编译程序,调试程序了。

但是,还有一个非常严重的问题,就是一般的关于C/C++的默认库函数,VSCode是可以自动补全的,只要安装了C/C++插件就够了。

但是呢,我们如果要用第三方库,VSCode就无法自动补全了。所以,我们还需要进一步地去配置。

这里我们主要是要配置C/C++插件,让这个插件可以通过CMake来找到第三方库的头文件,从而提供代码补全的支持。

具体的操作步骤如下:

1、创建c_cpp_properties.json配置文件: 方法:“Ctrl+Shift+P”,接着输入“C/C++”,选择“C/C++编辑配置(JSON)” 2、配置c_cpp_properties.json文件,具体可见下方程序实例:

c_cpp_properties.json

{ "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ], "windowsSdkVersion": "10.0.18362.0", "compilerPath": "D:/software/TDM-GCC-64/bin/g++.exe", // 这里写你自己的g++的路径 "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "gcc-x64", "configurationProvider": "vector-of-bool.cmake-tools" // 这个很重要,就是这句话在通过cmake引入第三方库的代码补全 } ], "version": 4 } 3、重启VSCode

这里有一个更正 第三方库的代码补全的设置方法,如下,不要按我上面说的做… 参考博客: VSCode中C/C++库文件的配置(自动提示、补全) https://blog.csdn.net/cbc000/article/details/80670413 关键就是要在includePath里面添加第三方库的头文件路径

4 结语

事实上,说了很多,关于C语言和C++的环境配置一言以蔽之就是,要保证编译器能在编译阶段能找到静态链接库,而应用软件在运行阶段,能找到动态链接库,我们所做的一切配置都是为了这两点。 OK,enjoy your coding time~~~



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3